home *** CD-ROM | disk | FTP | other *** search
-
- OPUS
-
- (c) Copyright 1986, Wynn Wagner III, All Rights Reserved
-
-
-
- 26 October 1986
-
-
-
-
-
-
-
-
-
-
- EVENTS
-
- The Things That Go Bump In The Night
-
-
-
- WHAT EVENTS ARE
- ------------------------------------------------------------------------------
-
- There are current two types of events:
-
- * YELL ... During a YELL event, your computer will get
- noisy when a user selects Y)ell from the main
- menu. Outside a yell event, the user will be
- sent the contents of the file YELL.BBS ... which
- usually explains that you have the bell turned
- off (although some of the embedded commands
- could prove effective here. <sly grin>)
-
- * EXTERNAL ... When Opus hits an external event, it exits the
- program. You always have a CODE ("ErrorLevel")
- associated with an external event. Opus sets the
- DOS ERRORLEVEL to this value before it terminates.
- A batch file can detect this value and do whatever
- external processing you want. (See your DOS manual
- for more information about ERRORLEVEL and batch
- files.)
-
- "But," you say, "what about the matrix?" Currently Opus does not
- know how to place an outgoing phone call. Mail/Network/Matrix
- events are treated as though they were external events. For
- example, if you have a schedule file built for some other<tm>
- system, it may contain a mail event C. Opus would treat Event C
- as an external event, and set the ErrorLevel to 67 when it
- terminates. The value 67 is the ASCII value of the letter C.
- For more information about ASCII values, find an "ASCII Chart" ...
- located in the appendix of every microcomputer book ever printed.
-
- Version Zero of Opus does not place outgoing network calls. That
- will come in version one. Stay tuned, and watch this space
- for developments.
-
- You can use SEAdog<tm> or Fido<tm> or some other program that
- can make outgoing calls on IFNA<tm>-type networks like
- Fido<tm>Net<tm>.
-
-
-
-
-
-
- TIME ZONE
- ------------------------------------------------------------------------------
-
- Internally, Opus always works in Greenwich Mean Time. You are
- rarely affected by this. In fact, you may not have even realized
- it until now.
-
- Your SCHED.BBS (or whatever name) file is probably in local time...
- so you need to tell Opus how to convert.
-
- Please find the item (below) that applies to you and put it
- into your AUTOEXEC.BAT file.
-
- EASTERN
- ----------------------------------------------
- For standard time......... SET TZ=EST+05
- For daylight time......... SET TZ=EDT+04
-
- CENTRAL
- ----------------------------------------------
- For standard time......... SET TZ=CST+06
- For daylight time......... SET TZ=CDT+05
-
- MOUNTAIN
- ----------------------------------------------
- For standard time......... SET TZ=MST+07
- For daylight time......... SET TZ=MDT+06
-
- PACIFIC
- ----------------------------------------------
- For standard time......... SET TZ=PST+08
- For daylight time......... SET TZ=PDT+07
-
- OTHER TIME ZONES
- ----------------------------------------------
- Yukon standard time....... SET TZ=YST+09
- Alaska standard time...... SET TZ=AST+10
- Bering standard time...... SET TZ=BST+11
-
-
- The `TZ' means `Time Zone'.
- The first three characters are the initials used the time zone
- The final three characters represent the deviation from universal
- time (Greenwich Mean Time).
-
- The system defaults to CENTRAL STANDARD time with a deviation
- of +06 hours from Universal time.
-
- Ho-boy. You get all of that? There's a test next period.
-
-
-
-
- THE OPUS EVENT MANAGER
- ------------------------------------------------------------------------------
-
- You can have 35 events (numbered 0 to 34).
-
- The sysop-only `6' command deals with events. If you have
- sysop privs, just press `6' on the main menu. You'll
- see this:
-
- Opus Event Manager
- L)ist
- C)hange
- Q)uit
-
- Event: _
-
-
- Type `L' to see a list of the current events or `C' to change
- one of the events.
-
- The list looks like this:
-
- # Day ---Times--- TZone Duration Description
- 0 ... All 09:00-22:00 Local 780 min Yell, 20 sec. bell
- 1 ... All 09:00-10:00 GMT 60 min Mail route C
- 4 ... All 12:00-12:30 Local 30 min Mail route D, DISABLED
- 20 ... All 06:31-06:32 Local 1 min eXternal 210
-
- Look at the times for events 0 and 1. Both begin at 9:00! But
- event 0 is 9am LOCAL time; event 1 is 9am GREENWICH MEAN TIME.
- Opus handles both absolute and relative times. The local event
- will always happen at 9:00am. If our system were in Central
- Standard time, event #1 would fire at 3:00am local time. When
- we switch to Central Daylight, the event happens at 4:00am local
- time.
-
- To change an event, type C. You'll be asked for a slot number.
- On the list (above) the slot numbers are on the far left of
- each line. You have 35 slots ... numbered 0 to 34.
-
- After you pick a slot, you'll see something like this:
-
- S)tatus......................... Enabled
- K)ind........................... Mail route D
- D)ay............................ All
- T)ime (start)................... 12:00
- Z)one........................... Local
- L)ength......................... 30
-
- A)nother slot
- Q)uit
-
- Change: _
-
-
- If the event happens to be a yell event, you'll also see this:
-
- B)ell duration.................. 30
-
- If it's an eXternal event, here's an addition line for the menu:
-
- E)xit code...................... 210
-
-
- STATUS can be Enabled or Disabled. Press S to flip between
- the two.
- KIND is a letter from A to Z. A few letters have special
- meaning to Opus:
-
- X... external event
- Y... yell event
- Z... RESERVED, don't use this one
-
- Two of the network events usually have a special
- meaning. These are the conventional meanings of
- A and C:
-
- A... direct mail, for those with no host
- C... the National Mail Hour
-
- DAY is the day-of-the-week for an event.
-
- NOTE: Version 0 of Opus only supports ALL.
-
- TIME is the hour/minute when the event is supposed to
- begin. Use a 24-hour clock, like this:
-
- 00:00 ... midnight
- 3:00 ... 3am
- 12:00 ... noon
- 18:00 ... 6pm
-
- By the way, the so-called "National Mail Hour" for
- IFNA<tm>-type networks such as Fido<tm>Net<tm>
- is 9:00 Greenwich Mean Time.
-
-
- ZONE is either LOCAL or GMT. This is explained in
- agonizing detail in an earlier part of this pamphlet.
-
- NOTE: Zone is an Opus extension. Other<tm> systems
- do not know about GMT.
-
- LENGTH is the number of minutes for an event. Currently,
- the shortest event is 1 minute.
-
- BELL on yell events is the number of seconds you want your
- computer to make a racket when somebody presses Y on
- the main menu. The shortest possible bell duration
- is 5 seconds. The longest is 255 seconds.
-
- EXIT is the value for Opus to use when it shuts itself down
- on an eXternal event. You can check this exit code
- value using the DOS ERRORLEVEL. See your DOS manual's
- section on batch files for information on ErrorLevel.
-
- ANOTHER is a menu command to change from one slot to another.
-
- QUIT is a menu command that lets you leave the change section.
-
-
-
-
-
- BY THE WAY
- ------------------------------------------------------------------------------
-
- NOTE #1
-
- There's something that may be totally obvious to you. But
- it's something that took me some time to realize ... so I'll
- use up some of your paper (or disk space) to state it
- plainly.
-
- Here it is: an event KIND can appear in more than one SLOT.
-
- You probably knew that and will laugh to hear that I didn't
- know it for a long time.
-
- If you use Y (the yell event) as event #1, you haven't "used
- up" your yell event for the day. (stop snickering)
-
- You can have event #1 enable yell during the morning hours,
- for example. Then have no yell event for the afternoon.
- During the evening, you could have another yell event ...
- say, event #12, that enables yell again for a few hours.
-
-
- NOTE #2
-
- If you are converting from some other<tm> system, you may
- notice debris for some Opus-only items. The most notable is
- the Yell Bell duration figure. The longest time for the
- bell is 255 seconds regardless of what the screen might say.
- If Opus detects some outlandish value for the bell duration,
- it will set the duration to 30 seconds.
-
-
-
-
-
- INSIDE OPUS: STRUCTURES
- ------------------------------------------------------------------------------
-
-
- Version Zero of Opus tries to be compatible with support files
- currently being used by other<tm> systems. There is no claim
- that Opus will continue this compatibility forever and ever.
-
- This section is technical. It doesn't deal with the way events
- are handled. Instead, it's for those afflicted with a desire
- to know how the schedule file is stored on disk.
-
-
-
- /*---------------------------------------------------*/
- /* PRELIMINARIES */
- /* Definitions, etc */
- /*---------------------------------------------------*/
- #define begin {
- #define end }
- typedef unsigned char byte;
- typedef unsigned int word;
-
-
- /*---------------------------------------------------*/
- /* _TIME structure used by Fido<tm> version 11 */
- /* `daywk': 0=Sun 1=Mon ... 6=Sat 7=ALL */
- /*---------------------------------------------------*/
- typedef struct
- begin
- word year, month, day;
- word daywk;
- word hour,mins,sec;
- end _time;
-
-
- /*---------------------------------------------------*/
- /* SCHED */
- /* A schedule file (eg.SCHED.BBS) is simply an array */
- /* of 35 of these structures. */
- /*---------------------------------------------------*/
- struct _sched
- begin
- _time time;
- word len; /* Duration of event in min. */
- word enable; /* 1=used, 0=disabled */
- word trigger; /* Beats me, ask Tom Jennings */
- word result; /* X errorlevel; OPUS:Yellbell */
- byte tag; /* The event kind (A to Z) */
- byte junk_1; /* To word-align Fido<tm> rec */
- word a,b,c,d; /* OPUS: Reserved */
- byte junk_2; /* OPUS: Reserved */
- byte GMT; /* OPUS: Set=GMT, Clear=local */
- end;
-
-
-
-
-
-
-
- ###
-
-
-